1. Field
This disclosure relates generally to provisioning resources on public cloud infrastructure or hybrid cloud infrastructure to perform electronic design automation (EDA) tasks.
2. Description of the Related Art
An electronic design automation (EDA) refers to software tools or processes of designing integrated circuit (IC) devices with the aid of computing devices. An EDA process generally includes, for example, system design operations, logic design and functional verification, synthesis, netlist verification, design planning, physical implementation, analysis and extraction, physical verification, resolution enhancement, and mask data preparation. EDA tools dedicated to one or more of these tasks are commercially available from EDA tool developers such as Synopsys, Inc. of Mountain View, Calif. Generally, the EDA tool developers grant licenses to use the EDA tools in return for licensing fees. The licensing fees increase as the number and types of accessible EDA tools increase.
As more components are integrated into an IC device and more functions are accommodated in the IC device, some EDA task sets have come to require a large amount of computing and storage resources. Some EDA task sets may take days, weeks or even months to complete. To reduce such an extended runtime or meet other constraint conditions, EDA task sets may be divided into multiple smaller EDA tasks and then executed on multiple computing resources (e.g., servers) in parallel. Some EDA tasks may take longer to finish while other EDA tasks may finish in relatively short time. Also, accomplishment of an EDA task may be a prerequisite to performing another EDA task. Hence, a careful planning of the EDA tasks is needed to accomplish the EDA tasks within the constraint conditions.
Cloud computing distributes information and software on multiple computers connected by a network (e.g., Internet) and provided to users on demand. The users are often charged based on the types of hardware or software resources leased, and the lengths of time these resources are leased. The cloud computing enables the users to efficiently use the computing resources by eliminating or reducing the time and expense associated with provisioning and maintaining private server farms.
Although EDA tasks may also be performed in various types of cloud computing environment, EDA tool users are sensitive to security concerns as the EDA information or design information is often a significant asset to the EDA tool users. Due to the very nature of public cloud infrastructure, the EDA tool users are often concerned about the security of their information uploaded and processed in the public cloud infrastructure. The security concern of user's EDA information has delayed wide adoption of public or hybrid cloud computing in EDA industries.